#ifndef THREADID_H
#define THREADID_H

#include <QString>
#include <QMetaType>
#include "misc.h"

namespace Wishmaster {

	class WISHMASTER_EXPORT ThreadId
	{
	public:
		ThreadId();
		ThreadId(const QString& chanName, const QString& boardId, unsigned int threadId);

		QString chanName() const;
		QString boardId() const;
		unsigned int threadNumericId() const;
		QString threadStringId() const;

		bool isValid() const;

		bool operator<(const ThreadId& id) const;
		bool operator==(const ThreadId& id) const;
		bool operator!=(const ThreadId& id) const;
	private:
		QString m_chanName;
		QString m_boardId;
		unsigned int m_threadId;
		bool m_valid;
	};
} // namespace Wishmaster
Q_DECLARE_METATYPE(Wishmaster::ThreadId);

#endif // THREADID_H
